Background privacy filters suppress the background in video applications such as video teleconferences, for example. For instance, a user wants to be seen on a video conference call, but may not want background information such as personal or proprietary items to be seen by the other users. Similarly, foreground privacy filters suppress the foreground in video applications such as video monitoring, for example. For instance, some countries have legal restrictions on video monitoring, or some people have issues of privacy in a public or private space. In this case, the people being subjected to the video monitoring would want to have their image suppressed. Therefore, a foreground privacy filter would suppress the person's image while allowing the background to be viewed.
Conventional methods for background/foreground suppression sometimes produce errors where foreground is erroneously detected as background and vice versa. Conventional methods employed to date typically have error correction methods, but errors can rarely be reduced to zero. Therefore, the result of background/foreground suppression is often not good enough because an image with foreground/background holes in the video is considered low quality and reflects poorly on the product. One particular example uses a blurring filter in which background-detected pixels are replaced by a low-pass filtered (blurred) result of pixels at the same location from the current video frame. However, even though this may be an effective approach at background removal, it results in the video looking “cheap” (i.e., we are used to blurred images being poor quality). This also requires a large blurring filter to sufficiently obscure the background, and large blurring filters are computationally expensive.
In addition, conventional methods for separating the background pixels from the foreground pixels suffer from technical problems. For instance, after a difference between a current frame and calculated background frame is obtained, the difference image is subjected to a thresholding operation. The conventional art uses a manual static threshold determination that does not adapt for lighting changes and background updates. More sophisticated methods of automatically thresholding the difference image employ traditional statistical methods such as minimization of in-class error to determine the background and foreground pixel classes. However, these traditional statistical methods are not optimized to images and often leave holes in what should correctly be uniform foreground or background regions. As a result, the background and foreground pixels may contain a significant amount of errors. Thus, a more effective approach is desired.